package com.service.business.base.service;

import com.service.business.base.controller.req.EmailVerifyCodeReq;
import com.service.business.base.controller.req.PhoneVerifyCodeReq;
import com.service.business.base.controller.req.VerifyCodeReq;
import com.service.business.base.enums.NotifyCodeEnum;
import com.service.business.base.enums.VerifyCodeEnum;
import com.service.business.member.controller.req.TwoFaReq;

/**
 * <dl>
 * <dt>platform</dt>
 * <dd>Description:</dd>
 * <dd>Copyright: Copyright (C) 2018</dd>
 * <dd>Company: </dd>
 * <dd>CreateDate: 2019-04-14</dd>
 * </dl>
 */
public interface VerifyCodeService {

    void send(PhoneVerifyCodeReq verifyCodeReq);

    void sendEmail(EmailVerifyCodeReq verifyCodeReq);

    void insertSendVerifyCodeRecord(VerifyCodeReq verifyCodeReq, String code, VerifyCodeEnum verifyCodeEnum);

    void insertSendNotifyRecord(VerifyCodeReq verifyCodeReq, String typeName, VerifyCodeEnum verifyCodeEnum);

    void commonSend(VerifyCodeReq verifyCodeReq);
}
